// components/step/step.js
Component({
  // 在隔离情况，提供一个类名接口，让页面可以控制组件的样式
  externalClasses:["step_class"],
  options:{
    // 样式如何隔离apply-shared 父页面影响子组件
    // page-shared 父影响子，子影响父
    // shared 全局影响
    // isolated 互相不影响
    styleIsolation:"isolated",
    // 允许多个插槽
    multipleSlots:true,
    
  },
  /**
   * 组件的属性列表
   */
  properties: {
    value:{
      type:Number,
      // 默认值是1
      value:1
    }
  },

  /**
   * 组件的初始数据
   */
  data: {
    count:1
  },
  // 定义组件的生命周期
  lifetimes:{
    // 组件挂载完毕
    attached(){
      // 用value更新count
      this.setData({count:this.data.value})
      
    }
  },

  /**
   * 组件的方法列表
   */
  methods: {
      changeCount(e){
        // 获取原来count的值
        var count = this.data.count;
        // 修改count的值
        count+=e.target.dataset.step*1;
        this.setData({count})
      },
      // 对count实现双向绑定
      inputHd(e){
        this.setData({count:Number(e.detail.value)})
      }
  },
// 当count发送变化时候，向父组件发送事件
observers:{
  "count":function(count){
    // console.log("count发生变化",count);
    // 监听count的变化，向父组发送一个change事件
    // 事件对象的值为count
    this.triggerEvent("change",{value:count})
  }
}

})
